﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace RRTWSDSD.ServiceUtilidad
{
    /// <summary>
    /// Summary description for CalcularService
    /// </summary>
    [WebService(Namespace = "http://rtt.edu.upc.com.pe/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class CalcularService : System.Web.Services.WebService
    {

        [WebMethod]
        public double montoTotal(double precioUnitario, int cantidad)
        {
            if ( (precioUnitario > 0) && (cantidad >0) )
            {
                return (precioUnitario * cantidad);
            }
            return 0;
        }

        [WebMethod]
        public int calcularDiferenciaFechas(string fechaInicio, string fechaFin)
        {
            try
            {
                DateTime dtinicio = Convert.ToDateTime(fechaInicio);
                DateTime dtfin = Convert.ToDateTime(fechaFin);
                TimeSpan ts = dtfin - dtinicio;
                return ts.Days;
            }
            catch (Exception e) {
                throw new Exception("Error al diferenciar las fechas:" + e.Message);
            } 
        }

        [WebMethod]
        public double calcularDiferenciaFechasHoras(string fechaInicio, string fechaFin)
        {
            try
            {
                double respuesta = 0;
                DateTime dtinicio = Convert.ToDateTime(fechaInicio);
                DateTime dtfin = Convert.ToDateTime(fechaFin);
                TimeSpan span = dtfin.Subtract(dtinicio);

               respuesta =  Math.Round(span.TotalHours);

               return respuesta;
            }
            catch (Exception e)
            {
                throw new Exception("Error al diferenciar las fechas:" + e.Message);
            }
        }
    }
}
